This invention relates to synchronous clocked bus systems like microprocessor busses, Local Area networks (LANs), Wide Area networks (WANs) or wireless communication networks that run several data channels on one or several wires or carriers where the data in the respective channels has a fixed correlation to each other by means of synchronous clocking. In particular, the invention relates to a method to re-synchronize data in respective channels which have a relative delay to each other caused by different path lengths, etc., on the way from sender to receiver. Still more specifically, the invention relates to an apparatus used to eliminate those delays in order to make data usable again on the receiver side.
Backbones for local area network (LAN) connections within large companies, as the connections between companies (as, for example, through the World Wide Web), are presently typically operated using proprietary, or leased, glass fiber networks with an ATM protocol. For the backup of dropped out connections or when an increase of bandwidth is necessary, additional bandwidth may be achieved by bundling together several digital telephone channels (Bearer channels) of the public switched network.
Using one Bearer channel (B channel), a bandwidth of 64 Kbit/s can be achieved. Typically, 24 (T1 standard) or 30 (E1 standard) of these channels are contained in a primary multiplexed line, providing a raw data rate of up to 2 Mbit/s when fully utilized.
It is, however, problematic that network suppliers can give no warranty that all of these B channels are synchronously run with respect to each other when using telephone channels of a public switched network for backup or increase of bandwidth purposes. While the entire telephone network may be operated by a synchronous clock, differences in transmit time among bundled channels can occur. The contents of the transmitted data packages (ATM frames) which are multiplexed in these channels may not reach the addressee in the original form because the different data packets will pass along different paths on their way from sender to receiver. In addition, there will be no warranty that the individual channels will follow a certain sequence (channel shuffling) when arriving at the addressee. This problem is also known from the field of picture telephony.
The inverse multiplexing function converts a wide-band communication on a high speed link into a group of combined switched channels. This function is very useful when using, e.g., 2 Mbit/s bandwidth on ISDN B channels of 56 or 64 Kbit/s. For instance, the European primary ISDN (Integrated Services Digital Network) provides 30 B channels for data and one channel for call control (D channel) while Basic Rate ISDN provides 2 B channels for data and also one D channel for control.
One problem in inverse multiplexing is being able to re-synchronize the channels in order to rebuild a high speed link on the remote (receiving) side of an established ISDN network link between two peer stations A and B. As the established link can be used in full duplex mode, this is true for both directions, i.e. the path Axe2x86x92B may have different characteristics compared to the path Bxe2x86x92A. This requires that the inverse multiplexing must be performed symmetrically at each receiving station.
The BONDING(trademark) (Bandwidth On Demand Interoperability Groupxe2x80x94Trademark of the Bonding Consortium) specifications written by the BONDING consortium on Sep. 1, 1992 (and later releases) give some guidance to solving this problem. These specifications define a frame structure and procedures for establishing a wide-band communication connection by combining multiple switched 56 or 64 Kbit/s channels.
The BONDING specifications provide a high speed serial data stream by use of multiple, independent 56 or 64 Kbit/s channels. These channels are individually connected over a switched digital network (public, private, etc.). At the transmitting end, user data are distributed and transmitted over multiple independent B channels. The B channel is the network provided channel used to carry the data. At the receiving end, all channels are phase aligned and synchronized by use of an apparatus that makes data usable again on the receiver side. This apparatus hereinafter is referred to as an Inverse Multiplex Unit (IMU). It must be noted that the invention described hereinafter is not restricted to the IMU described herein but that all types of apparatus can be used which are able to eliminate the respective in the channels. The operation of such an IMU in the following will be described by a specific example related to the public switched network (ISDN). Again, it should be noted that this invention is not restricted to ISDN but can be used with any type of synchronous, time slot based network.
Because the channels used for the wide-band connection are routed through the network independently of each other, the data in each channel might be individually delayed relative to the data in other channels. Overall transit delay for the end-to-end connection is equal to the longest transit delay channel plus a constant delay due to the data reordering executed by the receiving IMU. To allow for correct realignment of the data transmitted, a training sequence is executed in advance of the channels being set-up to create the high speed link. A special framing pattern (synchronization pattern) is exchanged between both locations participating in the connection. The analysis of the pattern on the receiving side allows for exact calculation of respective delays between the B channels introduced by the switched network. Once aligned, data transfer can be constantly monitored throughout the call. The failure of a channel, for reasons such as call disconnection, phase slip or high error rate, can be automatically detected. Various fault isolation and recovery procedures are defined in response to these scenarios.
The BONDING specification describes four modes of operation:
BONDING Mode 0 provides initial parameter negotiation and Directory Number exchange over the master channel, then reverts to data transmission without delay equalization. This mode is useful when the calling endpoint requires Directory Numbers, but the delay equalization is performed by some other means (e.g., attached video codec).
BONDING Mode 1 supports user data rates that are multiples of the bearer rate. It provides the user with a data rate equal to the full available bandwidth, but does not provide an in-band monitoring function. The mode provides a solution for sending an initial set of frames, or so called training sequence, to synchronize (phase align) the sending of multiplexed data over the various channels of the group so as ensure the correct de-multiplexing of the high-speed data channel on the other side of the network. Error conditions on one or more channels that disturb overall system synchronization are not automatically recognized.
BONDING Modes 2 and 3 are each based on Mode 1 but with improvements for transmission quality. This is achieved by using data transfer frames having some bits dedicated to the storage of transmission control information that allows for transmission quality analysis and error recovery routines to be performed at the other side of the network. This is quite costly, however, as part of the bandwidth is being used for the transport of this control information. For Mode 2 the effective B channel rate is reduced by {fraction (1/64)}th. Mode 3 requires one additional B channel switched for control overhead.
BONDING Mode 1 is most popular in industry because of its simplicity as compared to Modes 2 and 3. The quality monitoring and failure recovery routines, unavailable with Mode 1, are typically performed at some upper layer of the application using the BONDING function. However, performing the above mentioned training sequence and the subsequent compensation of the data flow (sustained 2 Mbit/s) at the receiver or, because of full duplex mode, at both sides of the network connection, is a technical challenge. The training sequence must be performed each time a connection is set up, i.e., before each data transfer. Since each byte in the transmission must be processed, this approach can be very costly. The straight forward implementation is done using special ASICs or a number of signal processors.
In one of the aforementioned related applications, a method is provided for re-synchronizing a group of B channels in an ISDN network, using BONDING mode 1, which allows for re-synchronization without having to first disconnect the affected group of B channels. Thus, the reliability of the bonded channels is improved while maintaining a simpler system architecture as compared to the BONDING Mode 2 and 3 solutions. This method also has the advantage of tremendously reducing the time and network load required for achieving re-synchronization.
It is a purpose of the present invention to provide a method to perform the training sequence between two stations when establishing a network connection, and to provide for the rebuilding of data exactly in the same form as they are present at the transmitter in order to pass this information on to the high speed network.
It is another purpose of the present invention to provide an apparatus that is capable of carrying out this method.
It is still a further purpose of the present invention to provide such a method and apparatus which is functional, relatively inexpensive and has a minimum of required floor space.
The present invention provides a method which processes a training sequence between two stations when setting up a connection, calculates a compensation for relative delays between respective data channels and subsequently applies this compensation to the data that is passed.
In a special embodiment, the BONDING protocol is used with the IMU for the training sequence.
It is thus achieved that data is present, at the receiver at the output of the apparatus, in exactly the same form for passing on to a high speed (ATM) network as it has been dispatched at the sender.
As already mentioned above, a specifically advantageous embodiment of the present invention comprises the implementation of BONDING Mode 1. The invention will therefore be explained in more detail hereinafter on the basis of this mode. However, it is clear for the skilled worker that it is not restricted to this mode but can also be used with other suitable protocols.